
classDiagram
    class MainApp {
        +run() void
    }
    class Scheduler {
        +schedule_fetching() void
    }
    class Fetcher {
        +fetch_abstracts(keywords: list[str]) list
    }
    class Translator {
        +translate(text: str, target_language: str = 'zh') str
    }
    class WebhookSender {
        +send_to_dingtalk(message: str, webhook_url: str) void
    }
    class ConfigLoader {
        +load_config() dict
    }
    MainApp --> Scheduler
    Scheduler --> Fetcher
    Fetcher --> Translator
    Translator --> WebhookSender
    MainApp --> ConfigLoader
